package com.apigen.platform.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 表导入请求DTO
 *
 * @author API Generator Platform
 * @since 2025-09-24
 */
@Data
@Schema(description = "数据表导入请求参数")
public class TableImportRequest {

    @NotNull(message = "项目ID不能为空")
    @Schema(description = "所属项目ID", example = "1")
    private Long projectId;

    @NotEmpty(message = "表名列表不能为空")
    @Schema(description = "要导入的表名列表")
    private List<String> tableNames;

    @Schema(description = "是否覆盖已存在的表", example = "false")
    private Boolean overwrite = false;

    @Schema(description = "是否导入表关联关系", example = "true")
    private Boolean importRelations = true;

    @Schema(description = "是否导入索引信息", example = "true")
    private Boolean importIndexes = true;

    @Schema(description = "表名前缀过滤", example = "sys_")
    private String prefixFilter;

    @Schema(description = "表名后缀过滤", example = "_temp")
    private String suffixFilter;
}











